// utils/urlHelper.js
import { BASE_URL } from './api';

// 确保BASE_URL以斜杠结尾
const normalizedBaseUrl = BASE_URL.endsWith('/') ? BASE_URL : BASE_URL + '/';

// 清理URL - 提交时使用
export function cleanUrl(url) {
  if (!url) return '';
  // 如果URL已经包含基础URL，则去掉
  if (url.includes(normalizedBaseUrl)) {
    return url.replace(normalizedBaseUrl, '');
  }
  // 如果URL是完整URL但域名不同，也去掉前面的部分
  if (url.startsWith('http')) {
    const publicIndex = url.indexOf('/public/');
    return publicIndex !== -1 ? url.substring(publicIndex + 1) : url;
  }
  return url;
}

// 完整URL - 展示时使用
export function completeUrl(url) {
  if (!url) return '';
  // 如果URL已经是完整URL，直接返回
  if (url.startsWith('http')) {
    // 如果域名不同，替换为当前BASE_URL
    if (!url.includes(new URL(normalizedBaseUrl).host)) {
      const publicIndex = url.indexOf('/public/');
      return publicIndex !== -1 
        ? normalizedBaseUrl + url.substring(publicIndex + 1)
        : normalizedBaseUrl + 'public/' + url;
    }
    return url;
  }
  // 否则拼接基础URL
  return normalizedBaseUrl + (url.startsWith('public/') ? url : 'public/' + url);
}